//:C06:Nojump.cpp
// Cant't jump past constructors
class X
{
    public:
        X();
};

X::X(){}

void f(int i )
{
    if(i < 10)
    {
        // !go to jump1;    // Erorr: goto bypass init
    }
    X x1;    // Constructor called here
    jump1:
        switch(i)
        {
            case 1:
                X x2;    // Constructor called here
                break;
            //! case 2:    // Erorr: case bypasses init
                X x3;    // Constructor called here
                break;
        }
}

int main(void)
{
    f(9);
    f(11);
}